// 引入二次封装的axios
import $axios from '../http';

// react-thunk的异步处理方法  类似vuex中的actions
// 获取列表数据
export function getListAction() {
  return (dispatch) => {
    $axios.get('/api/list').then((res) => {
      console.log('getList res', res);
      // 通过dispatch调用 reducer中的方法处理 类型为"SET_LIST"的业务-将api中获取的数据存储到redux state的list属性中
      dispatch({
        type: 'SET_LIST',
        data: res
      })
    })
  }
}

// 删除某一条list数据 
export function delListAction(id) {
  return (dispatch) => {

    // 调用删除api  第二个参数是传入的数据
    $axios.post('/api/delete', {
      id: id
    }).then((res) => {
      // 获取删除api结果

      // 用结果中的data数据重制state 的list 值
      dispatch({
        type: 'SET_LIST',
        data: res.data
      })
    })
  }
}